﻿using Abp.AutoMapper;
using Basefr.App.Dtos;
using Paas.Core.Const.Enums;
using Paas.Core.Meta.Entities;
using System;
using System.Collections.Generic;
using System.Text;

namespace Paas.App.Interface.Meta.Dtos
{
    [AutoMap(typeof(MetaObject))]
    public class MetaObjectDto : DtoBase<Guid>
    {
        //private MetaObjectDto()
        //{
        //    MetaDataType = MetaDataType.Custom;
        //    MetaObjectGroup = "default";
        //    CurrentStatus = MetaStatus.New;
        //    IsPublic = true;
        //}
        /// <summary>
        /// 对象的类型
        /// </summary>
        public MetaDataType MetaDataType { get; set; }

        /// <summary>
        /// 对象所属的应用
        /// </summary>
        public int? ApplicationId { get; set; }

        /// <summary>
        /// 对象的名称，为英文字符
        /// </summary>
        public string Name { get; set; }

        /// <summary>
        /// 对象的显示名称，默认中文
        /// </summary>
        public string Label { get; set; }

        /// <summary>
        /// 对象描述
        /// </summary>
        public string Description { get; set; }

        /// <summary>
        /// 分组
        /// </summary>
        public string MetaObjectGroup { get; set; }

        /// <summary>
        /// 元数据对象的状态
        /// </summary>
        public MetaStatus CurrentStatus { get; set; }
        /// <summary>
        /// 实体的可见性
        /// </summary>
        public bool IsPublic { get; set; }
    }
}
